package umt.cs.cs241.assignment2.r_2_11;

public class Maryland extends State {
	  Maryland() { /* null constructor */ }
	  public void printMe() { System.out.println("Read it."); }
	  public static void main(String[] args) {
	    Region mid = new State();
	    State md = new Maryland();
	    Object obj = new Place();
	    Place usa = new Region();
	    md.printMe();
	    mid.printMe();
	    ((Place) obj).printMe();
	    obj = md;
	    ((Maryland) obj).printMe();
	    obj = usa;
	    ((Place) obj).printMe();
	    usa = md;
	    ((Place) usa).printMe();
	  }
	}
	class State  extends Region {
	  State() { /* null constructor */ }
	  public void printMe() { System.out.println("Ship it."); }
	}
	class Region extends Place {
	  Region() { /* null constructor */ }
	  public void printMe() { System.out.println("Box it."); }
	}
	class Place extends Object {
	  Place() { /* null constructor */ }
	  public void printMe() { System.out.println("Buy it."); }
	}

